package com.vf.user.service.impl;

import java.util.List;

import com.vf.user.domain.DTO.UserGroupDTO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.vf.user.mapper.GroupUserMapper;
import com.vf.user.domain.GroupUser;
import com.vf.user.service.IGroupUserService;

/**
 * 用户加入分组Service业务层处理
 * 
 * @author LBS
 * @date 2025-06-05
 */
@Service
public class GroupUserServiceImpl implements IGroupUserService 
{
    @Autowired
    private GroupUserMapper groupUserMapper;

    /**
     * 查询用户加入分组
     * 
     * @param groupId 用户加入分组主键
     * @return 用户加入分组
     */
    @Override
    public GroupUser selectGroupUserByGroupId(Long groupId)
    {
        return groupUserMapper.selectGroupUserByGroupId(groupId);
    }

    /**
     * 查询用户加入分组列表
     * 
     * @param groupUser 用户加入分组
     * @return 用户加入分组
     */
    @Override
    public List<GroupUser> selectGroupUserList(GroupUser groupUser)
    {
        return groupUserMapper.selectGroupUserList(groupUser);
    }

    /**
     * 新增用户加入分组
     * 
     * @param groupUser 用户加入分组
     * @return 结果
     */
    @Override
    public int insertGroupUser(GroupUser groupUser)
    {
        return groupUserMapper.insertGroupUser(groupUser);
    }

    /**
     * 修改用户加入分组
     * 
     * @param groupUser 用户加入分组
     * @return 结果
     */
    @Override
    public int updateGroupUser(GroupUser groupUser)
    {
        return groupUserMapper.updateGroupUser(groupUser);
    }

    /**
     * 批量删除用户加入分组
     * 
     * @param groupIds 需要删除的用户加入分组主键
     * @return 结果
     */
    @Override
    public int deleteGroupUserByGroupIds(Long[] groupIds)
    {
        return groupUserMapper.deleteGroupUserByGroupIds(groupIds);
    }

    /**
     * 删除用户加入分组信息
     * 
     * @param groupId 用户加入分组主键
     * @return 结果
     */
    @Override
    public int deleteGroupUserByGroupId(Long groupId)
    {
        return groupUserMapper.deleteGroupUserByGroupId(groupId);
    }

    @Override
    public UserGroupDTO groupListByUserId(Long userId) {
        return groupUserMapper.groupListByUserId(userId);
    }
}
